/*
类型推断: TS会在没有明确的指定类型的时候推测出一个类型
    定义变量时赋值了, 推断为对应的类型
    定义变量时没有赋值, 推断为any类型
*/
(() => {
    let a = 'abc'; // 定义变量并赋了值, 变量的类型推断为值的类型
    //    a = 3  // error
    let b; // 定义变量没有赋值, 变量的类型推断为any类型
    b = 'abc';
    b = 3;
    b = true;
    let c = undefined; // any类型
    let d = null; // any类型
})();
